#pragma once
#ifndef _TEST1_H
#define _TEST1_H // 防止重复引用

/* _cplusplus是cpp中的自定义宏，表示这是一段cpp的代码。
* 也就是说，下面一段代码的含义是：如果这是一段cpp的代码，那么加入extern "C"{和}处理其中的代码。
* 要明白为何使用extern "C"，还得从cpp中对函数的重载处理开始说起。在C++中，为了支持重载机制，在编译生成的汇编代码中要对函数的名字进行一些处理，加入函数的返回类型等。
* 在C中，只是简单的函数名字而已，不会加入其他的信息。也就是说，C++和C对产生的函数名字的处理是不一样的。
* 这里extern "C"必须要有，否则Qt项目引用函数将会出错，会提示函数找不到的错误码（“DWORD dw=::GetLastError();”，得到dw=127）。
*/
#ifdef __cplusplus
extern "C" {
#endif // __cplusplus

    // 通过关键字_declspec(dllexport)导出
    __declspec(dllexport) void f(); // 声明函数f()为导出函数

#ifdef __cplusplus
}
#endif // __cplusplus

#endif // !_TEST1_H
